#pragma once

#include "HLrpcDefine.h"
#include "HToolFunction.h"

namespace rpc {

namespace lrpc {

class HLRPCApi {
public:
    static Api_NtClose                          NtClose;
    static Api_NtOpenProcess                    NtOpenProcess;
    static Api_NtDuplicateObject                NtDuplicateObject;
    static Api_NtCreatePort                     NtCreatePort;
    static Api_NtConnectPort                    NtConnectPort;
    static Api_NtAlpcConnectPort                NtAlpcConnectPort;
    static Api_NtAcceptConnectPort              NtAcceptConnectPort;
    static Api_NtCompleteConnectPort            NtCompleteConnectPort;
    static Api_NtRequestPort                    NtRequestPort;
    static Api_NtReplyPort                      NtReplyPort;
    static Api_NtRequestWaitReplyPort           NtRequestWaitReplyPort;
    static Api_NtReplyWaitReplyPort             NtReplyWaitReplyPort;
    static Api_NtReplyWaitReceivePort           NtReplyWaitReceivePort;
    static Api_NtImpersonateClientOfPort        NtImpersonateClientOfPort;
    static Api_NtRegisterThreadTerminatePort    NtRegisterThreadTerminatePort;
};

} // namespace lrpc

} // namespace rpc
